package com.cayden.componets.canal;

import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;

/**
 * @author cayden
 * @date 2021-10-18 11:25
 * 配置类,对外的canal 配置
 */
@Data
@ConfigurationProperties(CanalProperties.PREFIX)
public class CanalProperties {

    /**
     * canal 配置头
     */
    public static final String PREFIX = "cayden.canal.client";

    /**
     * 是否启用canal
     */
    private Boolean enable;

    /**
     *主机ip
     */
    private String host;

    /**
     * port 这个可以在canal 配置文件中修改
     */
    private int port = 11111;

    /**
     * 使用的目标
     * 这个可以在canal中进行配置
     * 通过配置文件进行修改
     */
    private String destination = "example";

    /**
     * 匹配规则，可以通过canal修改
     */
    private String filterRegex;

    /**
     * 批量从 canal 服务器获取数据的最多数目
     */
    private int batchSize = 1000;

    /**
     * 当错误发生时，重试次数
     */
    private int retryCount = 5;

    /**
     * 信息捕获心跳时间
     */
    private long acquireInterval = 1000;

}
